Videos can be streamed over a network, e.g., the Internet, to users on client devices. Users can request videos related to specific subjects, and watch the videos on their user devices. The videos can be stored on a server accessible to the network, and streamed to user devices. The server can provide a resource or application, e.g., a webpage, displaying a user interface configured to allow for the searching of stored videos. For instance, a user can provide a search string, e.g., “cat videos”, to the server and receive a list of videos relevant to the search string. A user can then select a video and download or otherwise receive (e.g., a stream) the selected video from the server.
After receiving a selection of a video by a user, the server can also stream a video advertisement to the user's device. The video advertisement can be related to the selected video, or can be a random video advertisement or otherwise selected. The server can provide (e.g., stream) the selected video such as before, during or after streaming the entirety or portion of the video advertisement to the user.